Main memory databases, also referred to as in-memory databases, or resident memory databases, refer generally to databases that rely on a computer system's main memory for data storage, as opposed, for example, to the disk-based storage relied upon by traditional database systems. Main memory databases, particularly in certain computing contexts, are well-known to provide faster and more predictable access to data than conventional disk-based databases.
Many current hardware and software components contribute to the success of main memory databases. For example, modern computing systems might include multiple CPU cores for parallel processing, very large main memories, large available caches, and high levels of compression of database content. Nonetheless, even as such computing infrastructure has enabled larger and larger main memory databases, businesses and other users have desired the features and advantages of main memory databases for analysis of datasets so large that conventional main memory databases become partially or completely incapable of processing the desired volumes of data with sufficiently fast and predictable response times.
Consequently, in such environments, main memory databases may be unable to fully meet expectations of their users. For example, customers and other users of main memory databases in such environments may be unable to fully utilize desired features and advantages of such conventional main memory database systems.